// 1. ES5解决方法 : 利用闭包防止全局变量重名问题，再把flag和sum函数分装到obj对象中导出
var moduleA=(function(){
  // 导出对象
  var obj={} ;
  var flag=true;
  function sum(sum1,sum2){
    return sum1+sum2;
  }
  if(flag){
    console.log(sum(10,20));
  }
  obj.flag=flag;
  obj.sum=sum;
  return obj;
})()



// 方法二 模块化 commonJS 方法导出 （模块化每个js文件有自己的作用域，不用闭包了）
/*
var flag=true;
function sum(sum1,sum2){
  return sum1+sum2;
}
if(flag){
  console.log(sum(10,20));
}

// 导出对象
module.exports={
  flag:flag,
  sum:sum
}*/
